/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package CapaLogica;

import java.util.*;

/**
 *
 * @author Amejia
 */
public class Guia {
    
    //Atributos propios
    private String nombre;
    private String id;
    private String direccion;
    private String celular;
    private String idCongregacionDir;
    
    //Atributos de relacion
    private ArrayList<Atencion> listaAtenciones;
    private Congregacion congDirigida;
    
    //Constructor(es)
    public Guia(String nombre, String id, String direccion, String celular, String idCongregacionDir) {
        this.nombre = nombre;
        this.id = id;
        this.direccion = direccion;
        this.celular = celular;
        this.idCongregacionDir = idCongregacionDir;
    }
    
    public Guia(String nombre, String id, String direccion, String celular) {
        this.nombre = nombre;
        this.id = id;
        this.direccion = direccion;
        this.celular = celular;
    }
    
    
    //Acceso a la clase

    public String getCelular() {
        return celular;
    }

    public void setCelular(String celular) {
        this.celular = celular;
    }

    public String getDireccion() {
        return direccion;
    }

    public void setDireccion(String direccion) {
        this.direccion = direccion;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getIdCongregacionDir() {
        return idCongregacionDir;
    }

    public void setIdCongregacionDir(String idCongregacionDir) {
        this.idCongregacionDir = idCongregacionDir;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    private void setCongDirigida(Congregacion congDirigida) {
        this.congDirigida = congDirigida;
    }

    private void setListaAtenciones(ArrayList<Atencion> listaAtenciones) {
        this.listaAtenciones = listaAtenciones;
    }
    

    public Congregacion getCongDirigida() throws Exception {
        if(congDirigida==null){
            setCongDirigida(new MultiCongregacion().buscarPorCodigo(getIdCongregacionDir()));
        }
        return congDirigida;
    }

    public ArrayList<Atencion> getListaAtenciones() throws Exception {
        if(listaAtenciones==null){
            setListaAtenciones(new MultiAtencion().buscarAtencionesPorGuia(getId()));
        }
        return listaAtenciones;
    }
    
    //Metodos
    public String toString(){
        String result="Nombre: "+getNombre()
                    +"id: "+getId()
                    +"Direccion: "+getDireccion()
                    +"Celular: "+getCelular()
                    +"Direccion: "+getDireccion();
       return result;             
    }
    
    
    
    
}
